Multithreading Runtime Support for Loop and Functional Parallelism
نویسندگان
چکیده
This paper presents a multithreading runtime library that provides uniied support for loop and functional parallelisms. It implements a queue-based dynamic load-balancing scheme to exploit arbitrarily nested or disjointed parallel constructs, while keeping its overhead competitive with simpler conventional libraries. The library also provides support for the recently adopted industry standard: OpenMP.
منابع مشابه
Illinois-Intel Multithreading Library: Multithreading Support for Intel Architecture Based Multiprocessor Systems
Powerful desktop multiprocessor systems based on the Intel Architecture (iA) offer a formidable alternative to traditional scientific/engineering workstations for commercial application developers at an attractive costperformance ratio. However, the lack of adequate compiler and runtime library support for multithreading and parallel processing on Windows NT* makes it difficult or impossible to...
متن کاملPortable Support and Exploitation of Nested Parallelism in OpenMP
In this paper, we present an alternative implementation of the NANOS OpenMP runtime library (NthLib) that targets portability and efficient support of multiple levels of parallelism. We have implemented the runtime libraries of available opensource OpenMP compilers on top of NthLib, reducing thus their overheads and providing them with inherent support for nested parallelism. In addition, we pr...
متن کاملA THESIS SUBMITTED TO THE FACULTY OF THE GRADUATE SCHOOL OF THE UNIVERSITY OF MINNESOTA BY SHENGYUE WANG IN PARTIAL FULFILLMENT OF THE REQUIREMENTS FOR THE DEGREE OF DOCTOR OF PHILOSOPHY Pen-Chung Yew, Adviser
Thread-Level Speculation (TLS) allows potentially dependent threads to execute in parallel, by postponing the detection and verification of inter-thread data dependences until runtime. Although TLS greatly simplifies automatic parallelization, only moderate performance improvements have been achieved for general-purpose applications. Thus adequate compiler techniques must be developed to fully ...
متن کاملNested Parallelism in the OMPi OpenMP/C Compiler
This paper presents a new version of the OMPi OpenMP C compiler, enhanced by lightweight runtime support based on user-level multithreading. A large number of threads can be spawned for a parallel region and multiple levels of parallelism are supported efficiently, without introducing additional overheads to the OpenMP library. Management of nested parallelism is based on an adaptive distributi...
متن کاملExploitation of Multithreading to Improve Program Performance
Multithreading programming has been proposed as a method of improving program performance. Multiple threads can be used to expose the available parallelism in the program and to provide additional tasks for hiding latency. However, support for multithreading incurs additional runtime costs. These costs set lower bounds on the minimum size of parallelism that can be prootably exploited and minim...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 1999